---
id: org_perm
title: 1.4 细颗粒度的权限控制
sidebar_label: 1.4 细颗粒度的权限控制
---

import useBaseUrl from "@docusaurus/useBaseUrl";

在上节客户信息增加了可查看者信息后，可以尝试做客户的细颗粒度权限查看控制。即用户只有在可查看者里（可查看者存的是用户，部门，岗位或者群组），才能看到这些客户。

可以分两步走

1）查询出用户相关的组织架构元素

先查询出包含用户的所有部门（包括上级，上上级直到顶级部门），再查询出包含用户的所有岗位，加上用户本身，组成（用户+部门+岗位）的集合。再去群组多对多中间表查找包含这个集合中任一元素的群组，最终刚才的集合加上找到的群组，组成一个用户相关的组织架构元素新集合。这个集合查找相对比较麻烦，找到后可以做缓存。

2）查询客户信息时加上in条件

in条件在刚才的组织架构元素集合里，则用户就可以看到这个客户信息。


